package web后端.会话跟踪.登录认证.登录标记.令牌技术.JWT令牌.校验.过滤器Filter.详解;

/**
 * 过滤器详解
 */
public class index {
    /**
     * 1、过滤器详解————过滤器的执行流程<p>
     * 过滤器Filter拦截到请求后，可以在Filter的doFilter方法中执行放行操作：<p>
     * （FilterChain对象.doFilter(ServletRequest对象,ServletResponse对象)）<p>
     * 而放行前我们可以执行放行前逻辑的代码，请求被放行访问数据完之后，会回到Filter，有需要的话也可以执行放行后逻辑的代码<p>
     *
     * 两个问题：<p>
     * (1) 放行后访问对应资源，资源访问完成后，还会回到Filter中吗?<p>
     *    答：会<p>
     * (2) 如果回到Filter中，是重新执行还是执行放行后的逻辑呢?<p>
     *    答：放行后的逻辑<p></p><p></p>
     *
     *
     * 2、过滤器详解————过滤器的拦截路径<p>
     * 过滤器可以根据需求，配置不同的拦截路径<p>
     * 常见配置方式：<p>
     * (1) 拦截具体路径：如： "/login" （只有访问login路径时，才会被拦截）<p>
     * (2) 目录拦截： 如： "/emps/*" （访问/emps下的所有资源时，即以/emps开头，都会被拦截）<p>
     * (3) 拦截所有： 即： "/*" （访问所有资源都会被拦截）<p></p><p></p>
     *
     *
     * 3、过滤器详解————过滤器链<p>
     * 一个web应用中，可以配置多个过滤器，这多个过滤器就形成了一个过滤器链<p>
     * 如果配置了多个过滤器，程序会依次执行这些链上的过滤器（顺序默认按照类名排序，spring中可以用@Order(数字)来设置执行顺序），需要等到最后一个过滤器放行之后才可以访问服务器中的数据<p>
     * 而访问完数据返回到Filter的执行顺序是和放行前顺序相反的，等到全部执行完了之后再给浏览器响应数据<p>
     *
     *
     *
     *
     * @param args
     */
    public static void main(String[] args) {

    }
}
